package com.hee.erp.modules.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.hee.erp.annotation.Log;
import com.hee.erp.modules.entity.SysLog;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hee.erp.pojo.LoginInfo;
import com.hee.erp.vo.FiltersOption;
import com.hee.erp.vo.LogListParams;
import org.aspectj.lang.JoinPoint;
import org.springframework.scheduling.annotation.Async;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author weizehong
 * @since 2022-03-15
 */
public interface ISysLogService extends IService<SysLog> {

    @Async
    void saveLog(JoinPoint joinPoint, Log log, LoginInfo loginInfo);

    SysLog getDetailById(String id);

    IPage<SysLog> listByPage(LogListParams params);

    List<FiltersOption> getFiltersOptions();

}
